package cn.bdqn.service;

import cn.bdqn.domain.Course;
import cn.bdqn.utils.result.Page;

/**
 * 课程业务层
 * @author Wang-Hao
 */
public interface CourseService {

    /**
     * 查询全部课程，分页显示
     * @param pageNum
     * @return
     */
    public Page queryCourseAllInfoPaging(Integer pageNum, Integer pageAmount);

    /**
     * 根据课程id查询课程
     * @return
     */
    public Course queryCourseByCourseId(Integer courseId);

    /**
     * 添加课程信息(默认为未发布状态)
     * @return
     */
    public void insertCourseInfo(Course course);

    /**
     * 多条件查询课程信息，分页显示
     * @param pageNum 页码
     * @param pageAmount 每页显示的数量
     * @param baseAddress
     * @param fitAge
     * @param courseFeature
     * @return
     */
    public Page queryCourseInfoPagingByConditions(Integer pageNum, Integer pageAmount, String baseAddress, String fitAge, Integer courseFeature);

    /**
     * 修改发布状态
     * @return
     */
    public void updateIssueState(Integer courseId, Integer issueState);

    /**
     * 修改数据
     * @param course
     * @return
     */
    public void updateCourseData(Course course);

    /**
     * 根据基地id查询
     * @param baseId
     * @param pageNum
     * @param pageAmount
     * @return
     */
    public Page queryCourseInfoByBaseId(Integer baseId, Integer pageNum, Integer pageAmount);


}
